import json

# Загрузка данных из исходного файла
with open('api_results.json', 'r', encoding='utf-8') as file:
    api_results = json.load(file)

# Создание новой структуры данных
transformed_data = {
    "Groups": [],
    "Products": []
}

# Преобразование групп и продуктов
for category in api_results:
    # Добавление родительской группы
    transformed_data["Groups"].append({
        "Code": category['id'],
        "Name": category['name']
    })
    for subcategory in category['categories']:
        # Добавление подгрупп
        transformed_data["Groups"].append({
            "Code": subcategory['id'],
            "Name": subcategory['name'],
            "ParentCode": category['id']
        })
        # Добавление продуктов
        for product in subcategory['products']:
            transformed_data["Products"].append({
                "Code": product['code'],
                "Name": product['name'],
                "ParentCode": subcategory['id'],
                "Country": product['country'],
                "Price": product['price'],
                "Brend": product['brand'],
                "Desc": product['details']['description'] if product['details'] is not None else None,
                "Stok": product['inStock'],
                "Img": product['img'] if 'img' in product else None,
                # Добавление других необходимых полей...
            })

# Сохранение преобразованных данных в новый файл
with open('transformed_file1.json', 'w', encoding='utf-8') as file:
    json.dump(transformed_data, file, ensure_ascii=False, indent=4)